home *** CD-ROM | disk | FTP | other *** search
/ Network PC / Network PC.iso / amiga utilities / disk utilities / compression / imploderv4.0 / imploder / docs / library < prev    next >
Encoding:
Text File  |  1997-11-21  |  3.9 KB  |  86 lines

  1.  
  2. ** Features **
  3.  
  4. Library-imploding files is preferable, not only because the result is
  5. smaller, but also because the library is faster, and able to patch the
  6. AmigaDOS executable file loader (LoadSeg), thus decompressing ANY type
  7. of load file as soon as it is loaded into memory, e.g. fonts, devices,
  8. libraries, etc.
  9.  
  10. If you only library-implode program files, the library will be loaded
  11. when you run a library imploded program for the first time. However if
  12. you wish to implode non-program executables, you'll have to make sure
  13. the library is already resident because these won't load properly until
  14. LoadSeg has been wedged. If you're not yet using the 2.0 OS, there is a
  15. slight complication explained in the section at the end of this document.
  16.  
  17. To make sure the library is resident, we've provided a small program that
  18. can be run at the head of your startup sequence. It's called "ExpLoad"
  19. and resides in the tools subdirectory. All it does is open the explode 
  20. library. Once this is done, the library hooks itself into DOS and remains
  21. resident, even when a system flush occurs.
  22.  
  23. Note that it suffices to run a library imploded program to make the
  24. library resident, but this is less visible so you might forget about it
  25. when you modify your startup-sequence later on.
  26.  
  27. Once you've made sure the library is resident, you may merrily go around
  28. your system and library-implode libraries, devices, fonts and even keymaps!
  29.  
  30. By default the Imploder appends a foolproof piece of startup code to
  31. library imploded files. This checks whether the library is present.
  32. If not it will print an error. If started from the WorkBench a tiny
  33. window will be opened to display the error message.
  34.  
  35. However this error checking takes up a bit of space, and is redundant
  36. when you make sure the library is resident. For this reason you can
  37. specify the SHORTROOT tooltype/switch. When set, the Imploder will
  38. append only short startup code to library imploded files. This saves
  39. about 250 bytes for every executable.
  40.  
  41. If library imploded programs with a short root do not find the explode
  42. library they will keep on trying to open it until they succeed. These
  43. programs will therefore hang until the LIBS: directory contains the
  44. library.
  45.  
  46. Still, using the SHORTROOT switch has its advantages. The reason it is not
  47. enabled by default is to make sure that people have read this document
  48. first.
  49.  
  50.  
  51. ** Pre-2.0 problems **
  52.  
  53. If you are NOT using 2.0 or some newer OS, there are a few additional
  54. problems related to BCPL braindeadness, so if you're still running 1.3 or
  55. less, READ THIS!
  56.  
  57. Under a pre 2.0 OS, if you run a library imploded program generated with
  58. the SHORTROOT option from the WorkBench, while the library hasn't been made
  59. resident yet, the system will guru. This is a problem caused by the OS.
  60. The default library startup code checks for this condition, and will exit
  61. cleanly after reporting an error.
  62.  
  63. So under 1.3 or less it is advisable to make the explode.library resident
  64. before the WorkBench is active, e.g. early in your startup sequence, even
  65. when you're using library imploded non-program executables;
  66. The first invocation of a library imploded program might happen from the
  67. WorkBench.
  68.  
  69. In addition to this it is best not to library implode handlers under pre
  70. 2.0. See the Techno document for an in depth explanation of these issues.
  71.  
  72.  
  73. ** Conclusion **
  74.  
  75. Library implosion limits the possibility of passing on one's executables
  76. to other people/systems who/that do not have the explode.library installed.
  77. I think this doesn't really matter because I strongly believe people
  78. should be left the option of deciding in what way, if at all, they are
  79. going to compress/install executables. (See the "Philosophy" document
  80. for a more extensive discussion of this issue).
  81.  
  82. Evidently, using library imploded files is the most transparent to the
  83. system. We personally recommend using mostly library implosion, and only
  84. in special cases normal implosion, or overlay implosion for the odd
  85. overlayed file one might encounter.
  86.